OCPBUGS-99768: fix OSImageStream e2e test and Makefile test-changed for OCP 5.0 - #9115
Conversation
|
Pipeline controller notification For optional jobs, comment This repository is configured in: LGTM mode |
|
@bryan-cox: This pull request explicitly references no jira issue. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
Skipping CI for Draft Pull Request. |
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
📝 WalkthroughWalkthroughUpdated 🚥 Pre-merge checks | ✅ 11✅ Passed checks (11 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: bryan-cox The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #9115 +/- ##
=======================================
Coverage 44.51% 44.51%
=======================================
Files 774 774
Lines 96997 96997
=======================================
Hits 43179 43179
Misses 50830 50830
Partials 2988 2988
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@Makefile`:
- Around line 393-396: Keep the CHANGED_DIRS assignment and its following if
conditional in the same shell by adding the required recipe line continuation at
the end of the assignment command. Preserve the existing changed-directory
filtering and conditional behavior so CHANGED_DIRS remains available when
evaluated.
- Around line 399-403: Update the CHANGED_PKGS package-discovery loop in the
Makefile so go list failures are no longer universally suppressed or treated as
excluded packages. Distinguish packages omitted solely by build constraints from
genuine loading errors, surface the latter, and make the test target fail when
they occur while preserving the skip behavior for constraint-only exclusions.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository YAML (base), Central YAML (inherited)
Review profile: CHILL
Plan: Enterprise
Run ID: e6e3095e-7335-4593-a50a-d229bbe5ba4e
📒 Files selected for processing (1)
Makefile
|
@bryan-cox: This pull request references Jira Issue OCPBUGS-99768, which is invalid:
Comment The bug has been updated to refer to the pull request using the external bug tracker. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
/jira refresh |
|
@bryan-cox: This pull request references Jira Issue OCPBUGS-99768, which is valid. The bug has been moved to the POST state. 3 validation(s) were run on this bug
DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
@bryan-cox: This pull request references Jira Issue OCPBUGS-99768, which is valid. 3 validation(s) were run on this bug
DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
/test e2e-v2-gke |
The NodePoolOSImageStreamDefaultStatusTest hardcoded expectedStream to rhel-9, which broke when the OCP 5.0 nightly payload switched RHCOS from RHEL 9 to RHEL 10 (July 20-22 builds). The original fix used the OCP release version to predict the RHEL generation, but during transitions the payload's RHCOS version may not match the OCP minor version (e.g. 5.0 payload with RHEL 9 RHCOS on AWS). Instead of predicting, assert that status.osImageStream is set to any recognized stream (rhel-9 or rhel-10). For the no-rollout test, read the actual stream from status rather than deriving it from the version. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
AWS e2e failure root causeThe initial fix used The CI release image for this PR is built from Changes madeMade the test payload-agnostic — assert the stream is set and recognized rather than predicting the exact value:
|
Test Resultse2e-aws
e2e-aks
|
6 similar comments
Test Resultse2e-aws
e2e-aks
|
Test Resultse2e-aws
e2e-aks
|
Test Resultse2e-aws
e2e-aks
|
Test Resultse2e-aws
e2e-aks
|
Test Resultse2e-aws
e2e-aks
|
Test Resultse2e-aws
e2e-aks
|
Test Resultse2e-aks
e2e-aws
|
Test Resultse2e-aws
e2e-aks
|
5 similar comments
Test Resultse2e-aws
e2e-aks
|
Test Resultse2e-aws
e2e-aks
|
Test Resultse2e-aws
e2e-aks
|
Test Resultse2e-aws
e2e-aks
|
Test Resultse2e-aws
e2e-aks
|
Test Resultse2e-aks
e2e-aws
|
Test Resultse2e-aws
e2e-aks
|
9 similar comments
Test Resultse2e-aws
e2e-aks
|
Test Resultse2e-aws
e2e-aks
|
Test Resultse2e-aws
e2e-aks
|
Test Resultse2e-aws
e2e-aks
|
Test Resultse2e-aws
e2e-aks
|
Test Resultse2e-aws
e2e-aks
|
Test Resultse2e-aws
e2e-aks
|
Test Resultse2e-aws
e2e-aks
|
Test Resultse2e-aws
e2e-aks
|
|
@bryan-cox: all tests passed! Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
Test Resultse2e-aws
e2e-aks
|
|
@bryan-cox: Jira Issue Verification Checks: Jira Issue OCPBUGS-99768 Jira Issue OCPBUGS-99768 has been moved to the MODIFIED state and will move to the VERIFIED state when the change is available in an accepted nightly payload. 🕓 DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
What this PR does / why we need it:
The
NodePoolOSImageStreamDefaultStatusTesthardcodedexpectedStreamtorhel-9for all OCP versions. On OCP >= 5.0, nodes run RHCOS 10 and reportrhel-10inMachine.NodeInfo.OSImage, so the controller correctly setsstatus.osImageStream.nametorhel-10. The hardcoded expectation caused the test to timeout waiting for a value that would never appear, breaking thee2e-v2-gkejob.The fix uses the same version-aware pattern already established in
NodePoolOSImageStreamExplicitDefaultNoRolloutTest: expectrhel-9on OCP < 5.0 andrhel-10on OCP >= 5.0.The test passed on PR #9033 (July 23) because the
5.0.0-0.cinightly resolved to the July 20 build (5.0.0-0.ci-2026-07-20-122541), whose RHCOS still reportedrhel-9inNodeInfo.OSImage. By the time PR #9086 ran (July 25), the nightly resolved to the July 22 build (5.0.0-0.ci-2026-07-22-191603), which ships RHCOS 10 and reportsrhel-10. The RHCOS image in the 5.0 payload flipped from RHEL 9 to RHEL 10 between July 20 and July 22.Additionally, the
test-changedMakefile target (used by the pre-push hook) failed on packages gated behind build tags likee2ev2. This PR adds ago listfilter to dynamically skip packages that aren't compilable under default build constraints.Example failing run: https://prow.ci.openshift.org/view/gs/test-platform-results/pr-logs/pull/openshift_hypershift/9086/pull-ci-openshift-hypershift-main-e2e-v2-gke/2080933767463047168/
Last passing run (PR #9033): https://prow.ci.openshift.org/view/gs/test-platform-results/pr-logs/pull/openshift_hypershift/9033/pull-ci-openshift-hypershift-main-e2e-v2-gke/2080172889335664640/
Which issue(s) this PR fixes:
Fixes e2e-v2-gke permafail on
[Feature:NodePoolOSImageStream]testSpecial notes for your reviewer:
The controller behavior is correct —
setOSImageStreamStatus()reads actualMachine.NodeInfo.OSImageand faithfully reports the RHEL generation the nodes are running. The test was hardcoded to expectrhel-9regardless of OCP version, with a TODO comment (CNTRLPLANE-3032) acknowledging it needed updating. This PR implements that TODO.Checklist:
Summary by CodeRabbit